草庐IT

swift - 将字典保存到 NSUserDefaults

全部标签

c# - 枚举时修改 .NET 字典

我正在使用Dictionary我想在枚举它的同时更改它,但似乎这是不允许的。我该怎么做? 最佳答案 基本上不要。明确不支持它。来自Dictionary.GetEnumerator()的文档:Anenumeratorremainsvalidaslongasthecollectionremainsunchanged.Ifchangesaremadetothecollection,suchasadding,modifying,ordeletingelements,theenumeratorisirrecoverablyinvalidate

c# - 从并发字典中获取所有值并在不丢失数据的情况下清除它

我正在向并发字典中添加/更新对象并定期(每分钟)刷新字典,所以我的代码看起来像这样:privatestaticConcurrentDictionary_metrics=newConcurrentDictionary();publicstaticvoidIncrementCountMetricBy(stringname,intcount){_metrics.AddOrUpdate(....}publicstaticMetric[]Flush(){varflushedMetrics=_metrics;_metrics=newConcurrentDictionary();returnflus

c# - 给定的键不在字典中

我接手了一个项目,在.Net4.0项目中尝试找回丢失的密码时,该项目给用户带来了上述错误。我一步一步找到了问题所在,但问题是,生成的值似乎是正确的,所以我不知道为什么会发生错误。提前感谢任何可以查看以下代码并帮助我找出修复方法的人。让我知道是否需要更多信息。我查看了所有我能找到的东西,但没有任何东西给我可以使用的线索。问题是我无法追踪键/值组合应该输入的位置,也不知道一旦我添加了它。代码如下。我在http://forums.asp.net/t/1926444.aspx/1?given+key+was+not+present+in+the+dictionary发表了类似的讨论但那里没有人

C# - 将实现接口(interface)的对象添加到字典

我有一本字典:privateDictionaryexamples;我有两个实现接口(interface)的类:publicclassExample1:IExample{}publicclassExample2:IExample{}我已经创建了一种从字典中获取实例(如果它存在)的方法,但我正在尝试找出一种方法来实例化一个新对象(如果它不存在)。publicTGetExample()whereT:IExample{//Returnthesignalifitexistsif(examples.ContainsKey(typeof(T))){IExamplevalue;if(!examples

c# - 我们什么时候为字典执行 GetHashCode()?

我已将Dictionary(TKey,TValue)用于多种用途。但是我没有遇到任何实现GetHashCode()的场景,我认为这是因为我的键是主要类型,如int和string。我很想知道应该使用自定义对象作为键并因此实现方法GetHashCode()Equals()等的场景(真实世界的示例)。而且,使用自定义对象作为键是否需要实现这些功能? 最佳答案 只要默认Object.Equals,您就应该覆盖Equals和GetHashCode(引用相等性测试)是不够的。例如,当您的键类型是自定义类型并且您希望两个键被视为相等时,即使它们不

c# - 字典 : search key strings with a like feature

我想用类似的功能在字典中搜索我的关键字。我想拿key以“a”开头或者他们的第三个字母是“e”或者他们的第四个字母不是“d”在sql中可以编写查询“where(keylike'a')and(keynotlike'd__')“我想拥有这个功能对于字典。您有什么算法建议吗?谢谢! 最佳答案 虽然这将是表扫描的SQL等效项,但您可以使用LINQ或IEnumerable用于在字典中搜索其键与模式匹配的所有值的扩展方法:扩展方法:varvalues=dictionary.Where(pv=>pv.Key.StartsWith("A")||(pv

c# - 按值对字典(字符串,整数)进行排序

所以基本上我对交给我的任务有疑问。我不会让您厌烦任务本身的细节,所以我只会为您提供相关信息。我有一本字典,我需要按最高的int[value]排序,准确地说是前五名,我还需要能够显示后五名。Dictionarydict=newDictionary();字符串(键)包含已为文本文件读取的单词。整数(值)保存它们在文档中被提及的次数。我本来打算用另一种方式来做,但有人告诉我要用字典来做,所以请字典帮忙。如果您能解释应该如何完成,我将不胜感激,这样我就可以学习并完成任务,因为该任务的目的是self教育,但我发现它有点困难..非常感谢您提前提供的所有帮助,如果需要更多信息,请告诉我,我会发布!

c# - 双重检查字典 "ContainsKey"上的锁定

我的团队目前正在讨论这个问题。有问题的代码是if(!myDictionary.ContainsKey(key)){lock(_SyncObject){if(!myDictionary.ContainsKey(key)){myDictionary.Add(key,value);}}}我看到的一些帖子说这可能是一个很大的NONO(当使用TryGetValue时)。然而,我们团队的成员说这没问题,因为“ContainsKey”不会迭代key集合,而是通过O(1)中的哈希码检查key是否包含在内。因此他们声称这里没有危险。我想听听您对这个问题的诚实意见。 最佳答案

c# - 如何将Chart控件图片保存到文件中?

在.Net4.0WinForms应用程序中使用System.Windows.Forms.DataVisualization.Charting.Chart控件显示图表,我可以将其渲染保存到图片文件中吗? 最佳答案 Chart.SaveImage()方法怎么样? 关于c#-如何将Chart控件图片保存到文件中?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/10865006/

c# - 以对象为值的字典

我在这里疯了。这可能是因为我错过了一些规则,但如果是这样,请告诉我。我正在尝试创建一个Dictionary,其中一个字符串作为键,一个匿名对象作为值。或者,实际上我不只是在尝试,我正在做。但是当我想改变对象中的特定参数时,它出错了。我这样声明字典:varareas=newDictionary{{"Key1",new{name="Name1",today=0,all=0}},{"Key2",new{name="Name2",today=0,all=0}},...}然后我假设我可以做到这一点:foreach(varareainareas.Keys.ToArray()){varareanam